home *** CD-ROM | disk | FTP | other *** search
/ The Glitch Apple Disk Collection / 2014.glitch.apple.collection.zip / indexed / AUDEX.DSK / JABBER EXAMPLE PROGRAM.bas < prev    next >
BASIC Source File  |  2014-09-09  |  2KB  |  41 lines

  1. 0  REM *********************
  2. 1  REM *                   * 
  3. 2  REM *   JABBER ROUTINE  *
  4. 3  REM *  EXAMPLE PROGRAM  *
  5. 4  REM *                   *
  6. 5  REM *********************
  7. 6  REM NS=NUMBER OF SOUNDS; AS(X)=ADDRESS OF SOUND X
  8. 7  REM NT=NUMBER OF JABBER TABLES; PT(X)=ADDRESS OF JABBER TABLE X
  9. 10  HIMEM: 29183: REM FOR SOUNDSET AT NORMAL LOAD LOCATION
  10. 15  PRINT  CHR$(4);"BLOAD AUDIO OPCODES"
  11. 16  PRINT  CHR$(4);"BLOAD DEMO SOUNDSET"
  12. 17  PRINT  CHR$(4);"BLOAD DEMO JABBERTABLE"
  13. 21 :
  14. 22 :
  15. 23  REM USE PROCEDURE FROM SQUALK DEMO TO FIND END OF SOUNDSET
  16. 24  REM LAST BYTE OF SOUNDSET WILL BE AS(NS+1)
  17. 25  DIM AS(30)
  18. 30 NS = 1:AS(NS) = 29184: REM  NORMAL SOUNDSET START
  19. 35 AS(NS +1) = 1 +AS(NS) + PEEK(AS(NS)): IF  PEEK(AS(NS +1)) < >0  THEN NS = NS +1: GOTO 35
  20. 45  REM UP TO HERE, SAME AS FOR SQUALK DEMO, TO FIND END OF SOUNDSET
  21. 46 :
  22. 47 :
  23. 48  REM NOW FIND JABBER TABLE ADDRESSES 
  24. 50  DIM PT(30): REM  ALLOW FOR UP TO 30 JABBER TABLES
  25. 54 NT =  PEEK(AS(NS +1) +1): REM NUMBER OF JABBER TABLES IS NORMALLY IN FIRST BYTE FOLLOWING SOUNDSET
  26. 55 PT(1) = AS(NS +1) +2: REM FIRST JABBER TABLE NORMALLY STARTS WITH SECOND BYTE AFTER SOUNDSET
  27. 60  FOR I = 1 TO NT: REM  (FOR ALL TABLES)
  28. 65 TABLE = PT(I)
  29. 70 TABLE = TABLE +3: IF  PEEK(TABLE +1) < >0  THEN  GOTO 70
  30. 75 PT(I +1) = TABLE +1: REM SET ADDRESS OF NEXT TABLE
  31. 80  NEXT I: REM GO ON TO NEXT TABLE
  32. 85  REM  THE PRECEDING LINES FIND THE ADDRESSES OF JABBER TABLES FOLLOWING THE SOUNDSET
  33. 86 :
  34. 87 :
  35. 90  FOR I = 1 TO NT:AD = PT(I): GOSUB 10003: NEXT I: REM  JABBER ALL TABLES
  36. 95  END 
  37. 96 :
  38. 97 :
  39. 10000  REM ONLY AUDSUBS LINES 10003 AND 10008 ARE NEEDED FOR JABBER
  40. 10003  GOSUB 10008: POKE 254,PL: POKE 255,PH: CALL 37478: RETURN : REM  CALL JABBER 
  41. 10008 PH =  INT(AD/256):PL = AD -256 *PH: RETURN : REM  CONVERT AD (ADDRESS) TO PH (POKEHI) AND PL (POKELO)